import store from '../store/index';
import {mapMutations} from 'vuex';
export default {
	/**
	 * 接口名称 lo
	 * apiName（obj）
	 */
	apiName: {
		login: 'user/login_pass', 
		wx_auto_reg:'user/mini_login', //微信登录
		user_main:'user/main',	//用户个人中心
		user_shop_info:'user/shop',//店铺信息
		user_logout:'user/logout',//退出登录
		platform_resource:'platform/resource',//平台资源
		update_user:'user/save',//更新用户信息
		sub_message_list:'platform/wechat_message_list',//微信订阅消息列表
		purchase_list:'drag/lists',//团购列表
		purchase_save:'drag/save',//团购新增/编辑
		subscribe:'user/subscribe',//订阅、取消订阅
		purchase_detail:'drag/detail',//团购详情
		purchase_end:'drag/end',//手动结束团购
		order_lists:'order/lists',//订单列表
		cluster_save:'cluster/create',//保存群信息
		cluster_lists:'cluster/lists',//群列表
		dissolve:'cluster/dissolve',//解散群
		cluster_detail:'cluster/detail',//群详情
		cluster_add_member:'cluster/add_member',//添加群成员
		cluster_member:'cluster/member_list',//群成员
		cluster_admin:'cluster/set_admin',//设置群管理员
		cluster_member_remove:'cluster/remove_member',//删除群成员
		add_order:'order/create',//接龙
		to_pay:'trade/to_pay',//去支付
		shop_drag_list:'drag/shop_drag_lists',//店铺主页
		remove_drag:'drag/remove',//删除接龙
		serial_list:'order/serial',//接龙订单号（定时取）
		user_statics:'order/statics',//个人中心数据统计
		order_cancel:'order/create_refund',//取消接龙订单
		apply_publish:'user/apply_publish',//申请发布权限
		verify_order:'order/verify',//核销订单
		check_dragon:'drag/check_dragon',//检测接龙是否可编辑
		single_dragon_statics:'order/single_dragon_statics',//单条接龙数据统计
		help_list:'platform/help_list',//帮助中心
		help_detail:'platform/help_detail',//文章详情
		total_statics:'order/total_statics',//总数据统计
		drag_detail_statics:'order/drag_statics',//接龙详情页数据统计
		add_dragon_view:'platform/add_dragon_view',//添加接龙来过的人
		my_attempt:'drag/my_attempt',//接龙-我参与的
		create_share_card:'platform/create_share_card',//生成分享卡片
		create_share_poster:'platform/create_share_poster',//生成分享海报
		create_drag_export:'drag/export_dragon',//生成单个接龙excel
	},
	...mapMutations(['logout']),
	/**
	 * 封装请求（async await 封装uni.request）
	 * method	   post/get		
	 * endpoint    接口方法名
	 * data		   所需传递参数	
	 * load		   是否需要loading
	 */
	async apiCall(method, endpoint, data,load,showT=true,title='请稍后') {
		if (!load) {
			uni.showLoading({
				title: title,
				mask: true
			});
		}
		// let fullurl = 'http://www.yjlive.cn:8085/api/' + endpoint;
		// let fullurl = 'http://127.0.0.1:8000/api/' + endpoint;
		let fullurl = 'https://httzx.shanerxiang.com/api/' + endpoint;
		// let Authorization = `${store.state.userInfo.tokenHead}${store.state.userInfo.token}`;
		// let Authorization = `Bearer ${store.state.userInfo.token}`;
		let uu = uni.getStorageSync('userInfo');
		let Authorization = `Bearer ${uu.token??''}`;//防止浏览器直接手动清除storage后调用接口，手动清除storage后不刷新页面store中存储的值还在，所以改用直接获取storage的方式
		let [error, res] = await uni.request({
			url: fullurl,
			data: data,
			method: method,
			header: {
				// 'Content-Type': 'application/x-www-form-urlencoded',
				'content-type': 'application/json',
				'Authorization':  Authorization || ''
			},
		});
		// if (!load) {
		// 	uni.hideLoading();
		// }		
		
		if(!res){
			uni.showToast({
				title: '网络错误',
				icon: 'none'
			});	
			uni.hideLoading();
			return false;
		}
		if(res.data.code==0){
			uni.hideLoading();
			return res.data;
		}
		else{
			uni.hideLoading();
			if(showT){
				uni.showToast({
					title: res.data.msg,
					icon: 'none',
					mask:true
				});
			
			}
			if(res.data.code ==10001){
				store.state.hasLogin=false;
				store.state.userInfo='';
				uni.removeStorage({
				    key: 'userInfo'  
				});
				let _url='/pages/public/wxLogin';
				// #ifndef MP
				_url ='/pages/public/login';
				// #endif
				uni.redirectTo({
					url:_url
				});
				return;
			}
			return false;
			// return res;
		}
	},
}
